<!DOCTYPE html>
<html lang="zh-cn">
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <title>vim编辑器基本用法 - vzvixb</title>
  <meta name="renderer" content="webkit" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/>

<meta http-equiv="Cache-Control" content="no-transform" />
<meta http-equiv="Cache-Control" content="no-siteapp" />

<meta name="theme-color" content="#f8f5ec" />
<meta name="msapplication-navbutton-color" content="#f8f5ec">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="#f8f5ec">


<meta name="author" content="even" /><meta name="description" content="vi编辑器通常被简称为vi，而vi又是visual editor的简称 。它在Linux上的地位就像Edit程序在DOS上一样。它可以执行输出、删除、查找、替换、块操作等众多文本操作，而且用户可以根据自己的需要对其进行定制，这是其他编辑程序所没有的。 vi 编辑器并不是一个排版程序，它不像Word或WPS那样可以对字体、格式、段落等其他属性进行编排，它只是一个文本编辑程序。没有菜单，只有命令，且命令繁多。vi有3种基本工作模式：命令行模式、文本输入模式和末行模式。 Vim是vi的加强版，比vi更容易使用。vi的命令几乎全部都可以在vim上使用。
" /><meta name="keywords" content="Hugo, theme, even" />






<meta name="generator" content="Hugo 0.90.1 with theme even" />


<link rel="canonical" href="https://zhouxiaoxin.gitee.io/post/1/vim%E7%BC%96%E8%BE%91%E5%99%A8/" />
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/manifest.json">
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5">

<script async src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script>

<link href="/sass/main.min.32d4dc642fec98c34c80bebb9c784c50771712b4a8a25d9f4dd9cce3534b426e.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/fancybox@3.1.20/dist/jquery.fancybox.min.css" integrity="sha256-7TyXnr2YU040zfSP+rEcz29ggW4j56/ujTPwjMzyqFY=" crossorigin="anonymous">


<meta property="og:title" content="vim编辑器基本用法" />
<meta property="og:description" content="vi编辑器通常被简称为vi，而vi又是visual editor的简称 。它在Linux上的地位就像Edit程序在DOS上一样。它可以执行输出、删除、查找、替换、块操作等众多文本操作，而且用户可以根据自己的需要对其进行定制，这是其他编辑程序所没有的。
vi 编辑器并不是一个排版程序，它不像Word或WPS那样可以对字体、格式、段落等其他属性进行编排，它只是一个文本编辑程序。没有菜单，只有命令，且命令繁多。vi有3种基本工作模式：命令行模式、文本输入模式和末行模式。
Vim是vi的加强版，比vi更容易使用。vi的命令几乎全部都可以在vim上使用。" />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://zhouxiaoxin.gitee.io/post/1/vim%E7%BC%96%E8%BE%91%E5%99%A8/" /><meta property="article:section" content="post" />
<meta property="article:published_time" content="2017-08-28T22:14:26+00:00" />
<meta property="article:modified_time" content="2017-08-28T22:14:26+00:00" />

<meta itemprop="name" content="vim编辑器基本用法">
<meta itemprop="description" content="vi编辑器通常被简称为vi，而vi又是visual editor的简称 。它在Linux上的地位就像Edit程序在DOS上一样。它可以执行输出、删除、查找、替换、块操作等众多文本操作，而且用户可以根据自己的需要对其进行定制，这是其他编辑程序所没有的。
vi 编辑器并不是一个排版程序，它不像Word或WPS那样可以对字体、格式、段落等其他属性进行编排，它只是一个文本编辑程序。没有菜单，只有命令，且命令繁多。vi有3种基本工作模式：命令行模式、文本输入模式和末行模式。
Vim是vi的加强版，比vi更容易使用。vi的命令几乎全部都可以在vim上使用。"><meta itemprop="datePublished" content="2017-08-28T22:14:26+00:00" />
<meta itemprop="dateModified" content="2017-08-28T22:14:26+00:00" />
<meta itemprop="wordCount" content="2529">
<meta itemprop="keywords" content="Linux," /><meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="vim编辑器基本用法"/>
<meta name="twitter:description" content="vi编辑器通常被简称为vi，而vi又是visual editor的简称 。它在Linux上的地位就像Edit程序在DOS上一样。它可以执行输出、删除、查找、替换、块操作等众多文本操作，而且用户可以根据自己的需要对其进行定制，这是其他编辑程序所没有的。
vi 编辑器并不是一个排版程序，它不像Word或WPS那样可以对字体、格式、段落等其他属性进行编排，它只是一个文本编辑程序。没有菜单，只有命令，且命令繁多。vi有3种基本工作模式：命令行模式、文本输入模式和末行模式。
Vim是vi的加强版，比vi更容易使用。vi的命令几乎全部都可以在vim上使用。"/>

<!--[if lte IE 9]>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/classlist/1.1.20170427/classList.min.js"></script>
<![endif]-->

<!--[if lt IE 9]>
  <script src="https://cdn.jsdelivr.net/npm/html5shiv@3.7.3/dist/html5shiv.min.js"></script>
  <script src="https://cdn.jsdelivr.net/npm/respond.js@1.4.2/dest/respond.min.js"></script>
<![endif]-->

</head>
<body>
  <div id="mobile-navbar" class="mobile-navbar">
  <div class="mobile-header-logo">
    <a href="/" class="logo">Even</a>
  </div>
  <div class="mobile-navbar-icon">
    <span></span>
    <span></span>
    <span></span>
  </div>
</div>
<nav id="mobile-menu" class="mobile-menu slideout-menu">
  <ul class="mobile-menu-list">
    <a href="/">
        <li class="mobile-menu-item">Home</li>
      </a><a href="/post/">
        <li class="mobile-menu-item">Archs</li>
      </a><a href="/tags/">
        <li class="mobile-menu-item">Tags</li>
      </a><a href="/categories/">
        <li class="mobile-menu-item">Cates</li>
      </a><a href="/about/">
        <li class="mobile-menu-item">About</li>
      </a><a href="/pages/runoob/">
        <li class="mobile-menu-item">runoob</li>
      </a><a href="/pages/98wubi/">
        <li class="mobile-menu-item">98wubi</li>
      </a>
  </ul>
</nav>
  <div class="container" id="mobile-panel">
    <header id="header" class="header">
        <div class="logo-wrapper">
  <a href="/" class="logo">Even</a>
</div>

<nav class="site-navbar">
  <ul id="menu" class="menu">
    <li class="menu-item">
        <a class="menu-item-link" href="/">Home</a>
      </li><li class="menu-item">
        <a class="menu-item-link" href="/post/">Archs</a>
      </li><li class="menu-item">
        <a class="menu-item-link" href="/tags/">Tags</a>
      </li><li class="menu-item">
        <a class="menu-item-link" href="/categories/">Cates</a>
      </li><li class="menu-item">
        <a class="menu-item-link" href="/about/">About</a>
      </li><li class="menu-item">
        <a class="menu-item-link" href="/pages/runoob/">runoob</a>
      </li><li class="menu-item">
        <a class="menu-item-link" href="/pages/98wubi/">98wubi</a>
      </li>
  </ul>
</nav>
    </header>

    <main id="main" class="main">
      <div class="content-wrapper">
        <div id="content" class="content">
          <article class="post">
    
    <header class="post-header">
      <h1 class="post-title">vim编辑器基本用法</h1>

      <div class="post-meta">
        <span class="post-time"> 2017-08-28 </span>
        <div class="post-category">
            <a href="/categories/linux/"> Linux </a>
            </div>
          <span class="more-meta"> 约 2529 字 </span>
          <span class="more-meta"> 预计阅读 6 分钟 </span>
        <span id="busuanzi_container_page_pv" class="more-meta"> <span id="busuanzi_value_page_pv"><img src="/img/spinner.svg" alt="spinner.svg"/></span> 次阅读 </span>
      </div>
    </header>

    <div class="post-toc" id="post-toc">
  <h2 class="post-toc-title">文章目录</h2>
  <div class="post-toc-content">
    <nav id="TableOfContents">
  <ul>
    <li><a href="#1进入编辑模式esc退出">1.进入编辑模式（esc退出）</a></li>
    <li><a href="#2尾行模式的操作esc或两次esc">2.尾行模式的操作(esc或两次esc)</a></li>
    <li><a href="#3命令模式操作">3.命令模式操作</a>
      <ul>
        <li><a href="#1-光标的移动">1) 光标的移动</a></li>
        <li><a href="#2-内容的删除">2) 内容的删除</a></li>
        <li><a href="#3-内容的复制">3) 内容的复制</a></li>
        <li><a href="#4-相关快键键操作">4) 相关快键键操作</a></li>
      </ul>
    </li>
    <li><a href="#vivim编辑器配置">vi/vim编辑器配置</a>
      <ul>
        <li><a href="#在线配置">在线配置</a></li>
        <li><a href="#简单配置">简单配置：</a></li>
        <li><a href="#实用设置">实用设置</a></li>
      </ul>
    </li>
  </ul>
</nav>
  </div>
</div>
    <div class="post-content">
      <p>vi编辑器通常被简称为vi，而vi又是visual editor的简称 。它在Linux上的地位就像Edit程序在DOS上一样。它可以执行输出、删除、查找、替换、块操作等众多文本操作，而且用户可以根据自己的需要对其进行定制，这是其他编辑程序所没有的。
vi 编辑器并不是一个排版程序，它不像Word或WPS那样可以对字体、格式、段落等其他属性进行编排，它只是一个文本编辑程序。没有菜单，只有命令，且命令繁多。vi有3种基本工作模式：命令行模式、文本输入模式和末行模式。
Vim是vi的加强版，比vi更容易使用。vi的命令几乎全部都可以在vim上使用。</p>
<h2 id="1进入编辑模式esc退出">1.进入编辑模式（esc退出）</h2>
<blockquote>
</blockquote>
<p>a: 光标 向后移动一位
i: 光标 和 所在字符 不发生任何变化
o: 给新起一行
s: 删除光标所在字符</p>
<h2 id="2尾行模式的操作esc或两次esc">2.尾行模式的操作(esc或两次esc)</h2>
<blockquote>
</blockquote>
<p>:q                  //quit 退出编辑器
:w                  //write 对修改后的内容进行保存
:wq                 //write quit 比保存并退出编辑器
:q!                 //强制退出编辑器
:w!                 //强制保存
:wq!                //强制保存并退出编辑器</p>
<blockquote>
</blockquote>
<p>:set number 或 nu        //设置行号
:set nonumber 或 nonu    //取消设置行号</p>
<blockquote>
</blockquote>
<p>:/内容/    或    /内容   //查找指定内容
小写n（next）下一个
大写N（next）上一个
:noh                    //取消查找
:数字                     //跳转到数字所在行</p>
<p>字符串替换cont1被替换为coont2</p>
<blockquote>
</blockquote>
<p>:s/cont1/cont2/         //替换光标所在行的第一个count1
:s/cont1/cont2/g        //替换光标所在行的全部的count1
:%s/cont1/cont2/g       //替换整个文档的count1</p>
<h2 id="3命令模式操作">3.命令模式操作</h2>
<blockquote>
</blockquote>
<h3 id="1-光标的移动">1) 光标的移动</h3>
<p>① 字符级
上(k) 下(j) 左(h) 右(l) 键
② 单词级
w: word移动到下个单词的首字母
e: end移动到下(本)个单词的尾字母
b: before移动到上个(本)单词的首字母
③ 行级
$: 行尾
0: 行首
④ 段落级(翻屏)
{: 上个(本)段落首部
}: 下个(本)段落尾部
⑤ 屏幕级(不翻屏)
H: 屏幕首部
L: 屏幕尾部
⑥ 文档级
G: 文档尾部
1G: 文档第1行
nG: 文档第n行</p>
<h3 id="2-内容的删除">2) 内容的删除</h3>
<blockquote>
</blockquote>
<p>dd:     删除光标当前行
2dd:    包括当前行在内，向后删除2行内容
ndd:    包括当前行在内，删除后边n行内容
x:      删除光标所在字符
c+w     从光标所在位置删除单词结尾，并进入编辑模式</p>
<h3 id="3-内容的复制">3) 内容的复制</h3>
<blockquote>
</blockquote>
<p>yy:     复制光标当前行
2yy:    包括当前行在内，向后复制2行内容
nyy:    包括当前行在内，复制后边n行内容
p:      对复制好的内容进行粘贴操作</p>
<h3 id="4-相关快键键操作">4) 相关快键键操作</h3>
<blockquote>
</blockquote>
<p>u:      undo撤销
J:      合并上下两行
r:      单个字符替换
.点:     重复执行上次最近的命令</p>
<h2 id="vivim编辑器配置">vi/vim编辑器配置</h2>
<p>linux打开<code>vi /etc/vim/vimrc</code><br>
添加:</p>
<h3 id="在线配置">在线配置</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash">wget -qO- https://raw.github.com/ma6174/vim/master/setup.sh <span class="p">|</span> sh -x
</code></pre></td></tr></table>
</div>
</div><h3 id="简单配置">简单配置：</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span><span class="lnt">18
</span><span class="lnt">19
</span><span class="lnt">20
</span><span class="lnt">21
</span><span class="lnt">22
</span><span class="lnt">23
</span><span class="lnt">24
</span><span class="lnt">25
</span><span class="lnt">26
</span><span class="lnt">27
</span><span class="lnt">28
</span><span class="lnt">29
</span><span class="lnt">30
</span><span class="lnt">31
</span><span class="lnt">32
</span><span class="lnt">33
</span><span class="lnt">34
</span><span class="lnt">35
</span><span class="lnt">36
</span><span class="lnt">37
</span><span class="lnt">38
</span><span class="lnt">39
</span><span class="lnt">40
</span><span class="lnt">41
</span><span class="lnt">42
</span><span class="lnt">43
</span><span class="lnt">44
</span><span class="lnt">45
</span><span class="lnt">46
</span><span class="lnt">47
</span><span class="lnt">48
</span><span class="lnt">49
</span><span class="lnt">50
</span><span class="lnt">51
</span><span class="lnt">52
</span><span class="lnt">53
</span><span class="lnt">54
</span><span class="lnt">55
</span><span class="lnt">56
</span><span class="lnt">57
</span><span class="lnt">58
</span><span class="lnt">59
</span><span class="lnt">60
</span><span class="lnt">61
</span><span class="lnt">62
</span><span class="lnt">63
</span><span class="lnt">64
</span><span class="lnt">65
</span><span class="lnt">66
</span><span class="lnt">67
</span><span class="lnt">68
</span><span class="lnt">69
</span><span class="lnt">70
</span><span class="lnt">71
</span><span class="lnt">72
</span><span class="lnt">73
</span><span class="lnt">74
</span><span class="lnt">75
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback">set hlsearch &#34;高亮度反白
set backspace=2 &#34;可随时用退格键删除
set autoindent &#34;自动缩排
set ruler &#34;可显示最后一行的状态
set showmode &#34;左下角那一行的状态
set nu &#34;可以在第一行的最前面显示行号
set bg=dark &#34;显示不同的底色色调
syntax on &#34;进行语法检验， 颜色显示
set cursorline &#34; 突出显示当前行

set ts=4 &#34;ts是tabstop的缩写， 设Tab宽4个空格
set expandtab
%retab!      &#34;加!是用于处理非空白字符之后的TAB， 即所有的TAB；若不加， 则只处理行首的TAB

&#34; Encoding related
set encoding=UTF-8
set langmenu=zh_CN.UTF-8
set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
set fileencoding=utf-8

&#34;支持{}、[]、()、&#34;&#34;、&#39;&#39;自动补全
inoremap ( &lt;c-r&gt;=OpenPair(&#39;(&#39;)&lt;CR&gt;
inoremap ) &lt;c-r&gt;=ClosePair(&#39;)&#39;)&lt;CR&gt;
inoremap { &lt;c-r&gt;=OpenPair(&#39;{&#39;)&lt;CR&gt;
inoremap } &lt;c-r&gt;=ClosePair(&#39;}&#39;)&lt;CR&gt;
inoremap [ &lt;c-r&gt;=OpenPair(&#39;[&#39;)&lt;CR&gt;
inoremap ] &lt;c-r&gt;=ClosePair(&#39;]&#39;)&lt;CR&gt;

&#34; just for xml document, but need not for now.
&#34;inoremap &lt; &lt;c-r&gt;=OpenPair(&#39;&lt;&#39;)&lt;CR&gt;
&#34;inoremap &gt; &lt;c-r&gt;=ClosePair(&#39;&gt;&#39;)&lt;CR&gt;

function! OpenPair(char)
    let PAIRs = {
                \ &#39;{&#39; : &#39;}&#39;,
                \ &#39;[&#39; : &#39;]&#39;,
                \ &#39;(&#39; : &#39;)&#39;,
                \ &#39;&lt;&#39; : &#39;&gt;&#39;
                \}
    if line(&#39;$&#39;)&gt;2000
        let line = getline(&#39;.&#39;)

        let txt = strpart(line, col(&#39;.&#39;)-1)
    else
        let lines = getline(1,line(&#39;$&#39;))
        let line=&#34;&#34;
        for str in lines
            let line = line . str . &#34;\n&#34;
        endfor

        let blines = getline(line(&#39;.&#39;)-1, line(&#34;$&#34;))
        let txt = strpart(getline(&#34;.&#34;), col(&#39;.&#39;)-1)
        for str in blines
            let txt = txt . str . &#34;\n&#34;
        endfor
    endif
    let oL = len(split(line, a:char, 1))-1
    let cL = len(split(line, PAIRs[a:char], 1))-1

    let ol = len(split(txt, a:char, 1))-1
    let cl = len(split(txt, PAIRs[a:char], 1))-1

    if oL&gt;=cL || (oL&lt;cL &amp;&amp; ol&gt;=cl)
        return a:char . PAIRs[a:char] . &#34;\&lt;Left&gt;&#34;
    else
        return a:char
    endif
endfunction
function! ClosePair(char)
    if getline(&#39;.&#39;)[col(&#39;.&#39;)-1] == a:char
        return &#34;\&lt;Right&gt;&#34;
    else
        return a:char
    endif
endf
</code></pre></td></tr></table>
</div>
</div><h3 id="实用设置">实用设置</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">  1
</span><span class="lnt">  2
</span><span class="lnt">  3
</span><span class="lnt">  4
</span><span class="lnt">  5
</span><span class="lnt">  6
</span><span class="lnt">  7
</span><span class="lnt">  8
</span><span class="lnt">  9
</span><span class="lnt"> 10
</span><span class="lnt"> 11
</span><span class="lnt"> 12
</span><span class="lnt"> 13
</span><span class="lnt"> 14
</span><span class="lnt"> 15
</span><span class="lnt"> 16
</span><span class="lnt"> 17
</span><span class="lnt"> 18
</span><span class="lnt"> 19
</span><span class="lnt"> 20
</span><span class="lnt"> 21
</span><span class="lnt"> 22
</span><span class="lnt"> 23
</span><span class="lnt"> 24
</span><span class="lnt"> 25
</span><span class="lnt"> 26
</span><span class="lnt"> 27
</span><span class="lnt"> 28
</span><span class="lnt"> 29
</span><span class="lnt"> 30
</span><span class="lnt"> 31
</span><span class="lnt"> 32
</span><span class="lnt"> 33
</span><span class="lnt"> 34
</span><span class="lnt"> 35
</span><span class="lnt"> 36
</span><span class="lnt"> 37
</span><span class="lnt"> 38
</span><span class="lnt"> 39
</span><span class="lnt"> 40
</span><span class="lnt"> 41
</span><span class="lnt"> 42
</span><span class="lnt"> 43
</span><span class="lnt"> 44
</span><span class="lnt"> 45
</span><span class="lnt"> 46
</span><span class="lnt"> 47
</span><span class="lnt"> 48
</span><span class="lnt"> 49
</span><span class="lnt"> 50
</span><span class="lnt"> 51
</span><span class="lnt"> 52
</span><span class="lnt"> 53
</span><span class="lnt"> 54
</span><span class="lnt"> 55
</span><span class="lnt"> 56
</span><span class="lnt"> 57
</span><span class="lnt"> 58
</span><span class="lnt"> 59
</span><span class="lnt"> 60
</span><span class="lnt"> 61
</span><span class="lnt"> 62
</span><span class="lnt"> 63
</span><span class="lnt"> 64
</span><span class="lnt"> 65
</span><span class="lnt"> 66
</span><span class="lnt"> 67
</span><span class="lnt"> 68
</span><span class="lnt"> 69
</span><span class="lnt"> 70
</span><span class="lnt"> 71
</span><span class="lnt"> 72
</span><span class="lnt"> 73
</span><span class="lnt"> 74
</span><span class="lnt"> 75
</span><span class="lnt"> 76
</span><span class="lnt"> 77
</span><span class="lnt"> 78
</span><span class="lnt"> 79
</span><span class="lnt"> 80
</span><span class="lnt"> 81
</span><span class="lnt"> 82
</span><span class="lnt"> 83
</span><span class="lnt"> 84
</span><span class="lnt"> 85
</span><span class="lnt"> 86
</span><span class="lnt"> 87
</span><span class="lnt"> 88
</span><span class="lnt"> 89
</span><span class="lnt"> 90
</span><span class="lnt"> 91
</span><span class="lnt"> 92
</span><span class="lnt"> 93
</span><span class="lnt"> 94
</span><span class="lnt"> 95
</span><span class="lnt"> 96
</span><span class="lnt"> 97
</span><span class="lnt"> 98
</span><span class="lnt"> 99
</span><span class="lnt">100
</span><span class="lnt">101
</span><span class="lnt">102
</span><span class="lnt">103
</span><span class="lnt">104
</span><span class="lnt">105
</span><span class="lnt">106
</span><span class="lnt">107
</span><span class="lnt">108
</span><span class="lnt">109
</span><span class="lnt">110
</span><span class="lnt">111
</span><span class="lnt">112
</span><span class="lnt">113
</span><span class="lnt">114
</span><span class="lnt">115
</span><span class="lnt">116
</span><span class="lnt">117
</span><span class="lnt">118
</span><span class="lnt">119
</span><span class="lnt">120
</span><span class="lnt">121
</span><span class="lnt">122
</span><span class="lnt">123
</span><span class="lnt">124
</span><span class="lnt">125
</span><span class="lnt">126
</span><span class="lnt">127
</span><span class="lnt">128
</span><span class="lnt">129
</span><span class="lnt">130
</span><span class="lnt">131
</span><span class="lnt">132
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback">&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;
&#34;&#34;实用设置
&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;&#34;
&#34; 设置当文件被改动时自动载入
set autoread
&#34; quickfix模式
autocmd FileType c,cpp map &lt;buffer&gt; &lt;leader&gt;&lt;space&gt; :w&lt;cr&gt;:make&lt;cr&gt;
&#34;代码补全 
set completeopt=preview,menu 
&#34;允许插件  
filetype plugin on
&#34;共享剪贴板  
set clipboard+=unnamed 
&#34;从不备份  
set nobackup
&#34;make 运行
:set makeprg=g++\ -Wall\ \ %
&#34;自动保存
set autowrite
set ruler                   &#34; 打开状态栏标尺
set cursorline              &#34; 突出显示当前行
set magic                   &#34; 设置魔术
set guioptions-=T           &#34; 隐藏工具栏
set guioptions-=m           &#34; 隐藏菜单栏
&#34;set statusline=\ %&lt;%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&amp;fileformat}\ %{&amp;encoding}\ %c:%l/%L%)\
&#34; 设置在状态行显示的信息
set foldcolumn=0
set foldmethod=indent 
set foldlevel=3 
set foldenable              &#34; 开始折叠
&#34; 不要使用vi的键盘模式，而是vim自己的
set nocompatible
&#34; 语法高亮
set syntax=on
&#34; 去掉输入错误的提示声音
set noeb
&#34; 在处理未保存或只读文件的时候，弹出确认
set confirm
&#34; 自动缩进
set autoindent
set cindent
&#34; Tab键的宽度
set tabstop=4
&#34; 统一缩进为4
set softtabstop=4
set shiftwidth=4
&#34; 不要用空格代替制表符
set noexpandtab
&#34; 在行和段开始处使用制表符
set smarttab
&#34; 显示行号
set number
&#34; 历史记录数
set history=1000
&#34;禁止生成临时文件
set nobackup
set noswapfile
&#34;搜索忽略大小写
set ignorecase
&#34;搜索逐字符高亮
set hlsearch
set incsearch
&#34;行内替换
set gdefault
&#34;编码设置
set enc=utf-8
set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936
&#34;语言设置
set langmenu=zh_CN.UTF-8
set helplang=cn
&#34; 我的状态行显示的内容（包括文件类型和解码）
&#34;set statusline=%F%m%r%h%w\ [FORMAT=%{&amp;ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime(\&#34;%d/%m/%y\ -\ %H:%M\&#34;)}
&#34;set statusline=[%F]%y%r%m%*%=[Line:%l/%L,Column:%c][%p%%]
&#34; 总是显示状态行
set laststatus=2
&#34; 命令行（在状态行下）的高度，默认为1，这里是2
set cmdheight=2
&#34; 侦测文件类型
filetype on
&#34; 载入文件类型插件
filetype plugin on
&#34; 为特定文件类型载入相关缩进文件
filetype indent on
&#34; 保存全局变量
set viminfo+=!
&#34; 带有如下符号的单词不要被换行分割
set iskeyword+=_,$,@,%,#,-
&#34; 字符间插入的像素行数目
set linespace=0
&#34; 增强模式中的命令行自动完成操作
set wildmenu
&#34; 使回格键（backspace）正常处理indent, eol, start等
set backspace=2
&#34; 允许backspace和光标键跨越行边界
set whichwrap+=&lt;,&gt;,h,l
&#34; 可以在buffer的任何地方使用鼠标（类似office中在工作区双击鼠标定位）
set mouse=a
set selection=exclusive
set selectmode=mouse,key
&#34; 通过使用: commands命令，告诉我们文件的哪一行被改变过
set report=0
&#34; 在被分割的窗口间显示空白，便于阅读
set fillchars=vert:\ ,stl:\ ,stlnc:\
&#34; 高亮显示匹配的括号
set showmatch
&#34; 匹配括号高亮的时间（单位是十分之一秒）
set matchtime=1
&#34; 光标移动到buffer的顶部和底部时保持3行距离
set scrolloff=3
&#34; 为C程序提供自动缩进
set smartindent
&#34; 高亮显示普通txt文件（需要txt.vim脚本）
au BufRead,BufNewFile *  setfiletype txt
&#34;自动补全
:inoremap ( ()&lt;ESC&gt;i
:inoremap ) &lt;c-r&gt;=ClosePair(&#39;)&#39;)&lt;CR&gt;
:inoremap { {&lt;CR&gt;}&lt;ESC&gt;O
:inoremap } &lt;c-r&gt;=ClosePair(&#39;}&#39;)&lt;CR&gt;
:inoremap [ []&lt;ESC&gt;i
:inoremap ] &lt;c-r&gt;=ClosePair(&#39;]&#39;)&lt;CR&gt;
:inoremap &#34; &#34;&#34;&lt;ESC&gt;i
:inoremap &#39; &#39;&#39;&lt;ESC&gt;i
function! ClosePair(char)
    if getline(&#39;.&#39;)[col(&#39;.&#39;) - 1] == a:char
        return &#34;\&lt;Right&gt;&#34;
    else
        return a:char
    endif
endfunction
filetype plugin indent on 
&#34;打开文件类型检测, 加了这句才可以用智能补全
set completeopt=longest,menu
</code></pre></td></tr></table>
</div>
</div>
    </div>

    <div class="post-copyright">
  <p class="copyright-item">
    <span class="item-title">文章作者</span>
    <span class="item-content">even</span>
  </p>
  <p class="copyright-item">
    <span class="item-title">上次更新</span>
    <span class="item-content">
        2017-08-28
        
    </span>
  </p>
  
  
</div>
<footer class="post-footer">
      <div class="post-tags">
          <a href="/tags/linux/">Linux</a>
          </div>
      <nav class="post-nav">
        <a class="prev" href="/post/1/%E8%A3%85%E7%B3%BB%E7%BB%9F%E6%95%99%E7%A8%8B/">
            <i class="iconfont icon-left"></i>
            <span class="prev-text nav-default">装系统教程</span>
            <span class="prev-text nav-mobile">上一篇</span>
          </a>
        <a class="next" href="/post/linux/linux%E5%B8%B8%E7%94%A8%E6%8C%87%E4%BB%A4/">
            <span class="next-text nav-default">Linux常用指令</span>
            <span class="next-text nav-mobile">下一篇</span>
            <i class="iconfont icon-right"></i>
          </a>
      </nav>
    </footer>
  </article>
        </div>
        

  

  

      </div>
    </main>

    <footer id="footer" class="footer">
      <div class="social-links">
      <a href="mailto:your@email.com" class="iconfont icon-email" title="email"></a>
      <a href="http://localhost:1313" class="iconfont icon-stack-overflow" title="stack-overflow"></a>
      <a href="http://localhost:1313" class="iconfont icon-twitter" title="twitter"></a>
      <a href="http://localhost:1313" class="iconfont icon-facebook" title="facebook"></a>
      <a href="http://localhost:1313" class="iconfont icon-linkedin" title="linkedin"></a>
      <a href="http://localhost:1313" class="iconfont icon-google" title="google"></a>
      <a href="http://localhost:1313" class="iconfont icon-github" title="github"></a>
      <a href="http://localhost:1313" class="iconfont icon-weibo" title="weibo"></a>
      <a href="http://localhost:1313" class="iconfont icon-zhihu" title="zhihu"></a>
      <a href="http://localhost:1313" class="iconfont icon-douban" title="douban"></a>
      <a href="http://localhost:1313" class="iconfont icon-pocket" title="pocket"></a>
      <a href="http://localhost:1313" class="iconfont icon-tumblr" title="tumblr"></a>
      <a href="http://localhost:1313" class="iconfont icon-instagram" title="instagram"></a>
      <a href="http://localhost:1313" class="iconfont icon-gitlab" title="gitlab"></a>
      <a href="http://localhost:1313" class="iconfont icon-bilibili" title="bilibili"></a>
  <a href="https://zhouxiaoxin.gitee.io/index.xml" type="application/rss+xml" class="iconfont icon-rss" title="rss"></a>
</div>

<div class="copyright">
  <span class="power-by">
    由 <a class="hexo-link" href="https://gohugo.io">Hugo</a> 强力驱动
  </span>
  <span class="division">|</span>
  <span class="theme-info">
    主题 - 
    <a class="theme-link" href="https://github.com/olOwOlo/hugo-theme-even">Even</a>
  </span>

  <div class="busuanzi-footer">
    <span id="busuanzi_container_site_pv"> 本站总访问量 <span id="busuanzi_value_site_pv"><img src="/img/spinner.svg" alt="spinner.svg"/></span> 次 </span>
      <span class="division">|</span>
    <span id="busuanzi_container_site_uv"> 本站总访客数 <span id="busuanzi_value_site_uv"><img src="/img/spinner.svg" alt="spinner.svg"/></span> 人 </span>
  </div>

  <span class="copyright-year">
    &copy; 
    2018 - 
    2022
    <span class="heart">
      <i class="iconfont icon-heart"></i>
    </span>
    <span class="author">even</span>
  </span>
</div>
    </footer>

    <div class="back-to-top" id="back-to-top">
      <i class="iconfont icon-up"></i>
    </div>
  </div>
  
  <script src="https://cdn.jsdelivr.net/npm/jquery@3.2.1/dist/jquery.min.js" integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4=" crossorigin="anonymous"></script>
  <script src="https://cdn.jsdelivr.net/npm/slideout@1.0.1/dist/slideout.min.js" integrity="sha256-t+zJ/g8/KXIJMjSVQdnibt4dlaDxc9zXr/9oNPeWqdg=" crossorigin="anonymous"></script>
  <script src="https://cdn.jsdelivr.net/npm/@fancyapps/fancybox@3.1.20/dist/jquery.fancybox.min.js" integrity="sha256-XVLffZaxoWfGUEbdzuLi7pwaUJv1cecsQJQqGLe7axY=" crossorigin="anonymous"></script>



<script type="text/javascript" src="/js/main.min.2517c0eb67172a0bae917de4af59b10ca2531411a009d4c0b82f5685259e5771.js"></script>








</body>
</html>
